package com.helloworld.core.common.util.file;

import cn.hutool.core.util.StrUtil;
import cn.hutool.setting.SettingUtil;

import java.net.URL;

public class FilePathUtil {

    /**
     * 获取用户主目录的路径可以通过
     *
     * @return 如：/Users/helloworld
     */
    public static String getUserHomePath() {
        return System.getProperty("user.home");
    }

    /**
     * 项目所在地址
     *
     * @return 如：/Users/helloworld/workspace/training
     */
    public static String getProjectPath() {
        return System.getProperty("user.dir");
    }

    /**
     * 获取resource目录下的文件地址
     * 如果是在src/test/resources同样能获取
     *
     * @param fileName 文件名，如：excel/xxx.xlsx
     * @return 如：/Users/.../target/test-classes/excel/xxx.xlsx
     */
    public static String getResourcePath(String fileName) {
        if (StrUtil.isEmpty(fileName)) {
            return "";
        }
        if (fileName.startsWith("/")) {
            fileName = fileName.substring(1);
        }
        URL resource = ClassLoader.getSystemResource(fileName);
        return resource == null ? "" : resource.getPath();
    }

}
